home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / latex209 / distribs / latex / doc / rep12.doc < prev    next >
Text File  |  1992-03-18  |  17KB  |  419 lines

  1. % REPORT STANDARD DOCUMENT STYLE -- Released 14 Jan 1992
  2. %    for LaTeX version 2.09
  3. % Copyright (C) 1992 by Leslie Lamport
  4.  
  5.  
  6. %  ****************************************
  7. %  *               FONTS                  *
  8. %  ****************************************
  9. %
  10.  
  11. \lineskip 1pt            % \lineskip is 1pt for all font sizes.
  12. \normallineskip 1pt
  13. \def\baselinestretch{1}
  14.  
  15. % Each size-changing command \SIZE executes the command
  16. %        \@setsize\SIZE{BASELINESKIP}\FONTSIZE\@FONTSIZE
  17. % where:
  18. %   BASELINESKIP = Normal value of \baselineskip for that size.  (Actual
  19. %                  value will be \baselinestretch * BASELINESKIP.)
  20. %
  21. %  \FONTSIZE     = Name of font-size command.  The currently available
  22. %                  (preloaded) font sizes are: \vpt (5pt), \vipt (6pt),
  23. %                  \viipt (etc.), \viiipt, \ixpt, \xpt, \xipt, \xiipt,
  24. %                  \xivpt, \xviipt, \xxpt, \xxvpt.
  25. %  \@FONTSIZE    = The same as the font-size command except with an
  26. %                  '@' in front---e.g., if \FONTSIZE = \xivpt then
  27. %                  \@FONTSIZE = \@xivpt.
  28. %
  29. % For reasons of efficiency that needn't concern the designer,
  30. % the document style defines \@normalsize instead of \normalsize.
  31. % This is done only for \normalsize, not for any other size-changing
  32. % commands.
  33.  
  34. \def\@normalsize{\@setsize\normalsize{14.5pt}\xiipt\@xiipt
  35. \abovedisplayskip 12\p@ plus3\p@ minus7\p@
  36. \belowdisplayskip \abovedisplayskip
  37. \abovedisplayshortskip  \z@ plus3\p@   
  38. \belowdisplayshortskip  6.5\p@ plus3.5\p@ minus3\p@
  39. \let\@listi\@listI}   % Setting of \@listi added 9 Jun 87
  40.  
  41. \def\small{\@setsize\small{13.6pt}\xipt\@xipt
  42. \abovedisplayskip 11\p@ plus3\p@ minus6\p@
  43. \belowdisplayskip \abovedisplayskip
  44. \abovedisplayshortskip  \z@ plus3\p@   
  45. \belowdisplayshortskip  6.5\p@ plus3.5\p@ minus3\p@
  46. \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87
  47. \parsep 4.5\p@ plus2\p@ minus\p@
  48.             \itemsep \parsep
  49.             \topsep 9\p@ plus3\p@ minus5\p@}}
  50.  
  51. \def\footnotesize{\@setsize\footnotesize{12pt}\xpt\@xpt
  52. \abovedisplayskip 10\p@ plus2\p@ minus5\p@
  53. \belowdisplayskip \abovedisplayskip
  54. \abovedisplayshortskip  \z@ plus3\p@   
  55. \belowdisplayshortskip  6\p@ plus3\p@ minus3\p@
  56. \def\@listi{\leftmargin\leftmargini %% Added 22 Dec 87
  57. \topsep 6\p@ plus2\p@ minus2\p@\parsep 3\p@ plus2\p@ minus\p@
  58. \itemsep \parsep}}
  59.  
  60. \def\scriptsize{\@setsize\scriptsize{9.5pt}\viiipt\@viiipt}
  61. \def\tiny{\@setsize\tiny{7pt}\vipt\@vipt}
  62. \def\large{\@setsize\large{18pt}\xivpt\@xivpt}
  63. \def\Large{\@setsize\Large{22pt}\xviipt\@xviipt}
  64. \def\LARGE{\@setsize\LARGE{25pt}\xxpt\@xxpt}
  65. \def\huge{\@setsize\huge{30pt}\xxvpt\@xxvpt}
  66. \let\Huge=\huge
  67.  
  68. \normalsize  % Choose the normalsize font.
  69.  
  70.  
  71. %  ****************************************
  72. %  *            PAGE LAYOUT               *
  73. %  ****************************************
  74. %
  75. % All margin dimensions measured from a point one inch from top and side
  76. % of page.  
  77.  
  78. % SIDE MARGINS:
  79. \if@twoside               % Values for two-sided printing:
  80.    \oddsidemargin 21pt    %   Left margin on odd-numbered pages.
  81.    \evensidemargin 59pt   %   Left margin on even-numbered pages.
  82.    \marginparwidth 85pt   %   Width of marginal notes.
  83. \else                     % Values for one-sided printing:
  84.    \oddsidemargin 39.5pt  %   Note that \oddsidemargin = \evensidemargin
  85.    \evensidemargin 39.5pt
  86.    \marginparwidth 68pt 
  87. \fi
  88. \marginparsep 10pt        % Horizontal space between outer margin and 
  89.                           % marginal note
  90.  
  91.  
  92. % VERTICAL SPACING:        
  93.                          % Top of page:
  94. \topmargin 27pt          %    Nominal distance from top of page to top
  95.                          %    of box containing running head.
  96. \headheight 12pt         %    Height of box containing running head.
  97. \headsep 25pt            %    Space between running head and text.
  98. \topskip = 12pt          %    '\baselineskip' for first line of page.
  99.                          % Bottom of page:
  100. \footskip 30pt           %    Distance from baseline of box containing
  101.                          %    foot to baseline of last line of text.
  102.  
  103.  
  104. % DIMENSION OF TEXT:
  105. % 24 Jun 86: changed to explicitly compute \textheight to avoid
  106. % roundoff.  The value of the multiplier was calculated as the floor
  107. % of the old \textheight minus \topskip, divided by \baselineskip for
  108. % \normalsize.  The old value of \textheight was 536.5pt.  \textheight
  109. % is the height of text (including footnotes and figures, excluding
  110. % running head and foot).
  111.  
  112. \textheight = 36\baselineskip
  113. \advance\textheight by \topskip
  114. \textwidth 390pt         % Width of text line.
  115.                          % For two-column mode: 
  116. \columnsep 10pt          %    Space between columns 
  117. \columnseprule 0pt       %    Width of rule between columns.
  118.  
  119. % A \raggedbottom command causes 'ragged bottom' pages: pages set to
  120. % natural height instead of being stretched to exactly \textheight.
  121.  
  122. % FOOTNOTES:
  123.  
  124. \footnotesep 8.4pt    % Height of strut placed at the beginning of every
  125.                       % footnote = height of normal \footnotesize strut,
  126.                       % so no extra space between footnotes.
  127.  
  128. \skip\footins 10.8pt plus 4pt minus 2pt  % Space between last line of
  129.                                          % text and top of first
  130.                                          % footnote.
  131.  
  132. % FLOATS: (a float is something like a figure or table)
  133. %
  134. %  FOR FLOATS ON A TEXT PAGE:
  135. %
  136. %    ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
  137. \floatsep 14pt plus 2pt minus 4pt        % Space between adjacent floats
  138.                                          % moved to top or bottom of
  139.                                          % text page.
  140. \textfloatsep 20pt plus 2pt minus 4pt    % Space between main text and
  141.                                          % floats at top or bottom of
  142.                                          % page.
  143. \intextsep 14pt plus 4pt minus 4pt       % Space between in-text figures
  144.                                          % and text.
  145. \@maxsep 20pt                            % The maximum of \floatsep, 
  146.                                          % \textfloatsep and \intextsep
  147.                                          % (minus the stretch and
  148.                                          % shrink).
  149. %    TWO-COLUMN FLOATS IN TWO-COLUMN MODE:
  150. \dblfloatsep 14pt plus 2pt minus 4pt     % Same as \floatsep for
  151.                                          % double-column figures in
  152.                                          % two-column mode.
  153. \dbltextfloatsep 20pt plus 2pt minus 4pt % \textfloatsep for
  154.                                          % double-column floats.
  155. \@dblmaxsep 20pt                         % The maximum of \dblfloatsep
  156.                                          % and \dbltexfloatsep.
  157.  
  158. %  FOR FLOATS ON A SEPARATE FLOAT PAGE OR COLUMN:
  159. %    ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
  160. \@fptop 0pt plus 1fil    % Stretch at top of float page/column. (Must
  161.                          % be 0pt plus ...)
  162. \@fpsep 10pt plus 2fil   % Space between floats on float page/column.
  163. \@fpbot 0pt plus 1fil    % Stretch at bottom of float page/column.
  164.                          % (Must be 0pt plus ... )
  165.  
  166. %   DOUBLE-COLUMN FLOATS IN TWO-COLUMN MODE.
  167. \@dblfptop 0pt plus 1fil % Stretch at top of float page. (Must be
  168.                          % 0pt plus ...)
  169. \@dblfpsep 10pt plus 2fil% Space between floats on float page.
  170. \@dblfpbot 0pt plus 1fil % Stretch at bottom of float page. (Must be
  171.                          % 0pt plus ... )
  172. % MARGINAL NOTES:
  173. %
  174. \marginparpush 7pt       % Minimum vertical separation between two
  175.                          % marginal notes.
  176.  
  177.  
  178. %  ****************************************
  179. %  *           PARAGRAPHING               *
  180. %  ****************************************
  181. %
  182. \parskip 0pt plus 1pt              % Extra vertical space between
  183.                                    % paragraphs.
  184. \parindent 1.5em                   % Width of paragraph indentation.
  185. %\topsep 10pt plus 4pt minus 6pt   % Extra vertical space, in addition
  186.                                    % to \parskip, added above and below
  187.                                    % list and paragraphing environments.
  188. \partopsep 3pt plus 2pt minus 2pt  % Extra vertical space, in addition
  189.                                    % to \parskip and \topsep, added when
  190.                                    % list leaves blank line before
  191.                                    % environment.
  192. %\itemsep 5pt plus 2.5pt minus 1pt % Extra vertical space, in addition
  193.                                    % to \parskip, added between list
  194.                                    % items.
  195. % See \@listI for values of \topsep and \itemsep
  196. % (Change made 9 Jun 87)
  197.  
  198. % The following page-breaking penalties are defined
  199.  
  200. \@lowpenalty   51      % Produced by \nopagebreak[1] or \nolinebreak[1]
  201. \@medpenalty  151      % Produced by \nopagebreak[2] or \nolinebreak[2]
  202. \@highpenalty 301      % Produced by \nopagebreak[3] or \nolinebreak[3]
  203.  
  204. \@beginparpenalty -\@lowpenalty    % Before a list or paragraph
  205.                                    % environment.
  206. \@endparpenalty   -\@lowpenalty    % After a list or paragraph
  207.                                    % environment.
  208. \@itempenalty     -\@lowpenalty    % Between list items.
  209.  
  210. % \clubpenalty         % 'Club line'  at bottom of page.
  211. % \widowpenalty        % 'Widow line' at top of page.
  212. % \displaywidowpenalty % Math display widow line.
  213. % \predisplaypenalty   % Breaking before a math display.
  214. % \postdisplaypenalty  % Breaking after a math display.
  215. % \interlinepenalty    % Breaking at a line within a paragraph.
  216. % \brokenpenalty       % Breaking after a hyphenated line.
  217.  
  218.  
  219. %    ****************************************
  220. %    *        CHAPTERS AND SECTIONS         *
  221. %    ****************************************
  222. %
  223. % Definition of \part moved to report.doc  19 Jan 88
  224.  
  225. % \@makechapterhead {TEXT} : Makes the heading for the \chapter
  226. % command.
  227. %
  228.  
  229. \def\@makechapterhead#1{%           % Heading for \chapter command
  230.   \vspace*{50\p@}%                  % Space at top of text page.
  231.   {\parindent \z@ \raggedright 
  232.     \ifnum \c@secnumdepth >\m@ne    % IF secnumdepth > -1 THEN
  233.       \huge\bf \@chapapp{} \thechapter %Print '\chaptername' and number.
  234.       \par 
  235.       \vskip 20\p@ \fi              % Space between number and title.
  236.     \Huge \bf                       % Title.
  237.     #1\par 
  238.     \nobreak                        % TeX penalty to prevent page break.
  239.     \vskip 40\p@                    % Space between title and text.
  240.   }}
  241.  
  242. % \@makeschapterhead {TEXT} : Makes the heading for the \chapter*
  243. % command.
  244. %
  245.  
  246. \def\@makeschapterhead#1{%          % Heading for \chapter* command
  247.   \vspace*{50\p@}%                  % Space at top of page.
  248.   {\parindent \z@ \raggedright 
  249.     \Huge \bf                       % Title.
  250.     #1\par 
  251.     \nobreak                        % TeX penalty to prevent page break.
  252.     \vskip 40\p@                    % Space between title and text.
  253.   }}
  254.  
  255. % \secdef{UNSTARCMDS}{STARCMDS} :
  256. %    When defining a \chapter or \section command without using
  257. %    \@startsection, you can use \secdef as follows:
  258. %       \def\chapter { ... \secdef \CMDA \CMDB }
  259. %       \def\CMDA    [#1]#2{ ...   % Command to define
  260. %                                  % \chapter[...]{...}
  261. %       \def\CMDB    #1{ ...       % Command to define
  262. %                                  % \chapter*{...}
  263.  
  264. \def\chapter{\clearpage      % Starts new page.
  265.    \thispagestyle{plain}%    % Page style of chapter page is 'plain'
  266.    \global\@topnum\z@      % Prevents figures from going at top of page.
  267.    \@afterindentfalse      % Suppresses indent in first paragraph.
  268.    \secdef\@chapter\@schapter}   % Change to \@afterindenttrue to have
  269.                                  % indent.
  270.  
  271. \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
  272.         \refstepcounter{chapter}%
  273.         \typeout{\@chapapp\space\thechapter.}%
  274.         \addcontentsline{toc}{chapter}{\protect
  275.         \numberline{\thechapter}#1}\else
  276.       \addcontentsline{toc}{chapter}{#1}\fi
  277.    \chaptermark{#1}%
  278.    \addtocontents{lof}%
  279.        {\protect\addvspace{10\p@}}% Adds between-chapter space
  280.    \addtocontents{lot}%
  281.        {\protect\addvspace{10\p@}}% to lists of figs & tables.
  282.    \if@twocolumn                  % Tests for two-column mode.  
  283.            \@topnewpage[\@makechapterhead{#2}]%
  284.      \else \@makechapterhead{#2}%
  285.            \@afterheading         % Routine called after chapter and
  286.      \fi}                         % section heading.
  287.  
  288. \def\@schapter#1{\if@twocolumn \@topnewpage[\@makeschapterhead{#1}]%
  289.         \else \@makeschapterhead{#1}%
  290.               \@afterheading\fi}
  291.  
  292. % \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE} 
  293. %            optional * [ALTHEADING]{HEADING}
  294. %    Generic command to start a section.  
  295. %    NAME       : e.g., 'subsection'
  296. %    LEVEL      : a number, denoting depth of section -- e.g.,
  297. %                 chapter=1, section = 2, etc.  A section number will be
  298. %                 printed if and only if LEVEL < or = the value of the
  299. %                 secnumdepth counter.
  300. %    INDENT     : Indentation of heading from left margin
  301. %    BEFORESKIP : Absolute value = skip to leave above the heading.  
  302. %                 If negative, then paragraph indent of text following 
  303. %                 heading is suppressed.
  304. %    AFTERSKIP  : if positive, then skip to leave below heading,
  305. %                       else - skip to leave to right of run-in heading.
  306. %    STYLE      : commands to set style
  307. %  If '*' missing, then increments the counter.  If it is present, then
  308. %  there should be no [ALTHEADING] argument.  A sectioning command
  309. %  is normally defined to \@startsection + its first six arguments.
  310.  
  311. \def\section{\@startsection {section}{1}{\z@}{-3.5ex plus-1ex minus
  312.     -.2ex}{2.3ex plus.2ex}{\reset@font\Large\bf}}
  313. \def\subsection{\@startsection{subsection}{2}{\z@}{-3.25ex plus-1ex
  314.     minus-.2ex}{1.5ex plus.2ex}{\reset@font\large\bf}}
  315. \def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-3.25ex plus
  316.     -1ex minus-.2ex}{1.5ex plus.2ex}{\reset@font\normalsize\bf}}
  317. \def\paragraph{\@startsection
  318.     {paragraph}{4}{\z@}{3.25ex plus1ex minus.2ex}{-1em}{\reset@font
  319.     \normalsize\bf}}
  320. \def\subparagraph{\@startsection
  321.     {subparagraph}{4}{\parindent}{3.25ex plus1ex minus
  322.      .2ex}{-1em}{\reset@font\normalsize\bf}}
  323.  
  324. % Default initializations of \...mark commands.  (See below for their
  325. % us in defining page styles.
  326. %
  327.  
  328. \def\chaptermark#1{}
  329. % \def\sectionmark#1{}           % Preloaded definitions
  330. % \def\subsectionmark#1{}
  331. % \def\subsubsectionmark#1{}
  332. % \def\paragraphmark#1{}
  333. % \def\subparagraphmark#1{}
  334.  
  335. % The value of the counter secnumdepth gives the depth of the
  336. % highest-level sectioning command that is to produce section numbers.
  337. %
  338.  
  339. \setcounter{secnumdepth}{2}
  340.  
  341. % APPENDIX
  342. %
  343. % The \appendix command must do the following:
  344. %    -- reset the chapter counter to zero
  345. %    -- set \@chapapp to Appendix (for messages)
  346. %    -- redefine the chapter counter to produce appendix numbers
  347. %    -- reset the section counter to zero
  348. %    -- redefine the \chapter command if appendix titles and headings
  349. %       are to look different from chapter titles and headings.
  350.  
  351. \def\appendix{\par
  352.   \setcounter{chapter}{0}%
  353.   \setcounter{section}{0}%
  354.   \def\@chapapp{\appendixname}%
  355.   \def\thechapter{\Alph{chapter}}}
  356.  
  357.  
  358. %    ****************************************
  359. %    *                LISTS                 *
  360. %    ****************************************
  361. %
  362.  
  363. % The following commands are used to set the default values for the list
  364. % environment's parameters. See the LaTeX manual for an explanation of
  365. % the meanings of the parameters.  Defaults for the list environment are
  366. % set as follows.  First, \rightmargin, \listparindent and \itemindent
  367. % are set to 0pt.  Then, for a Kth level list, the command \@listK is
  368. % called, where 'K' denotes 'i', 'ii', ... , 'vi'.  (I.e., \@listiii is
  369. % called for a third-level list.)  By convention, \@listK should set
  370. % \leftmargin to \leftmarginK.
  371. %
  372. % For efficiency, level-one list's values are defined at top level, and
  373. % \@listi is defined to set only \leftmargin.
  374.  
  375. \leftmargini 2.5em
  376. \leftmarginii 2.2em     % > \labelsep + width of '(m)'
  377. \leftmarginiii 1.87em   % > \labelsep + width of 'vii.'
  378. \leftmarginiv 1.7em     % > \labelsep + width of 'M.'
  379. \leftmarginv 1em
  380. \leftmarginvi 1em
  381.  
  382. \leftmargin\leftmargini
  383. \labelsep .5em
  384. \labelwidth\leftmargini\advance\labelwidth-\labelsep
  385. %\parsep 5pt plus 2.5pt minus 1pt   %(Removed 9 Jun 87)
  386.  
  387. % \@listI defines top level and \@listi values of
  388. % \leftmargin, \topsep, \parsep, and \itemsep
  389. % (Added 9 Jun 87)
  390. \def\@listI{\leftmargin\leftmargini \parsep 5\p@ plus2.5\p@ minus\p@
  391. \topsep 10\p@ plus4\p@ minus6\p@
  392. \itemsep 5\p@ plus2.5\p@ minus\p@}
  393.  
  394. \let\@listi\@listI
  395. \@listi 
  396.  
  397. \def\@listii{\leftmargin\leftmarginii
  398.    \labelwidth\leftmarginii\advance\labelwidth-\labelsep
  399.    \topsep 5\p@ plus2.5\p@ minus\p@
  400.    \parsep 2.5\p@ plus\p@ minus\p@
  401.    \itemsep \parsep}
  402.  
  403. \def\@listiii{\leftmargin\leftmarginiii
  404.     \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
  405.     \topsep 2.5\p@ plus\p@ minus\p@ 
  406.     \parsep \z@ \partopsep \p@ plus\z@ minus\p@
  407.     \itemsep \topsep}
  408.  
  409. \def\@listiv{\leftmargin\leftmarginiv
  410.      \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
  411.  
  412. \def\@listv{\leftmargin\leftmarginv
  413.      \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
  414.  
  415. \def\@listvi{\leftmargin\leftmarginvi
  416.      \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
  417.  
  418. \endinput
  419.